home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / Q-CHAT10.ZIP / QCHAT.PPE (.txt) < prev   
PCBoard Programming Language Executable  |  1995-03-21  |  2KB  |  177 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Integer  INTEGER002
  21.     String   STRING001
  22.     String   STRING002
  23.     String   STRING003
  24.     String   TSTRING004(1)
  25.     String   STRING005
  26.     String   STRING006
  27.     String   STRING007
  28.     String   STRING008
  29.     String   STRING009
  30.  
  31. ;------------------------------------------------------------------------------
  32.  
  33.     FOpen 1, PPEPath() + "qchat.cnf", 0, 0
  34.     FGet 1, TSTRING004(0)
  35.     FGet 1, TSTRING004(1)
  36.     FGet 1, STRING005
  37.     FGet 1, STRING008
  38.     FClose 1
  39.     STRING005 = Upper(STRING005)
  40.     BOOLEAN001 = 0
  41.     STRING003 = ""
  42.     STRING007 = ""
  43.     GetUser
  44.     INTEGER002 = U_PageLen
  45.     U_PageLen = 0
  46.     Print "@POFF@"
  47.     :LABEL001
  48.     If (BOOLEAN001) Goto LABEL002
  49.     STRING001 = ""
  50.     STRING002 = ""
  51.     STRING003 = ""
  52.     STRING001 = KInkey()
  53.     If ((STRING001 <> "") && (Len(STRING001) == 1)) Then
  54.         STRING003 = Upper(STRING001)
  55.         STRING007 = STRING007 + STRING001
  56.         Print TSTRING004(0) + STRING001
  57.     Endif
  58.     STRING002 = MInkey()
  59.     If ((STRING002 <> "") && (Len(STRING002) == 1)) Then
  60.         STRING003 = Upper(STRING002)
  61.         STRING007 = STRING007 + STRING002
  62.         Print TSTRING004(1) + STRING002
  63.     Endif
  64.     If (STRING003 == Chr(8)) Then
  65.         Print " "
  66.         Backup 1
  67.     Endif
  68.     If (STRING003 == Chr(13)) PrintLn "@POFF@"
  69.     If ((STRING003 == Chr(27)) && (STRING002 <> Chr(27))) BOOLEAN001 = 1
  70.     If ((STRING003 == Chr(32)) || (STRING003 == Chr(13))) STRING007 = ""
  71.     If ((STRING003 == "/") && (GetX() == 2)) Then
  72.         STRING006 = ""
  73.         Backup 1
  74.         InputStr STRING008 + " _", STRING006, 15, 3, Mask_Ascii(), 8
  75.         AnsiPos 1, GetY()
  76.         ClrEol
  77.         If ((Left(STRING006, 2) == "WH") && (Upper(STRING005) == "NONE")) PrintLn "@POFF@@WHO@"
  78.         If ((Left(STRING006, 2) == "WH") && (Upper(STRING005) <> "NONE")) Call STRING005
  79.         If (Left(STRING006, 2) == "QU") BOOLEAN001 = 1
  80.         If ((STRING006 == "?") || (STRING006 == "H")) Then
  81.             SaveScrn
  82.             Cls
  83.             PrintLn "@POFF@"
  84.             PrintLn "@X07QChat v1.00 available commands:"
  85.             PrintLn "@X08───────────────────────────────"
  86.             PrintLn 
  87.             PrintLn "@X07    WH@X08:  @X03show other nodes"
  88.             PrintLn "@X07    QU@X08:  @X03quit qchat"
  89.             PrintLn "@X07  H, ?@X08:  @X03this help"
  90.             PrintLn 
  91.             Print "@X07...press any key..."
  92.             STRING009 = Inkey()
  93.             RestScrn
  94.         Endif
  95.     Endif
  96.     If ((GetX() == 80) && (Len(STRING007) < 79)) Then
  97.         Backup Len(STRING007)
  98.         ClrEol
  99.         PrintLn "@POFF@"
  100.         Print "@POFF@" + STRING007
  101.     Endif
  102.     If (Len(STRING007) == 79) STRING007 = ""
  103.     Goto LABEL001
  104.     :LABEL002
  105.     U_PageLen = INTEGER002
  106.     Print "@PON@"
  107.     KbdStuff Chr(27)
  108.  
  109. ;------------------------------------------------------------------------------
  110. ;
  111. ; Usage report (before postprocessing)
  112. ;
  113. ; ■ Statements used :
  114. ;
  115. ;    1       Cls
  116. ;    2       ClrEol
  117. ;    8       Goto 
  118. ;    22      Let 
  119. ;    7       Print 
  120. ;    11      PrintLn 
  121. ;    14      If 
  122. ;    1       FOpen 
  123. ;    1       FClose 
  124. ;    4       FGet 
  125. ;    1       GetUser
  126. ;    1       InputStr 
  127. ;    1       KbdStuff 
  128. ;    1       Call 
  129. ;    1       AnsiPos 
  130. ;    3       Backup 
  131. ;    1       SaveScrn
  132. ;    1       RestScrn
  133. ;
  134. ;
  135. ; ■ Functions used :
  136. ;
  137. ;    7       +
  138. ;    17      ==
  139. ;    4       <>
  140. ;    1       <
  141. ;    7       !
  142. ;    7       &&
  143. ;    2       ||
  144. ;    5       Len(
  145. ;    5       Upper()
  146. ;    3       Left()
  147. ;    7       Chr()
  148. ;    1       Inkey()
  149. ;    1       Mask_Ascii()
  150. ;    1       PPEPath()
  151. ;    2       GetX()
  152. ;    1       GetY()
  153. ;    1       KInkey()
  154. ;    1       MInkey()
  155. ;
  156. ;------------------------------------------------------------------------------
  157. ;
  158. ; Analysis flags : C
  159. ;
  160. ; C - Call child PPE ■ 3
  161. ;     This is usually normal, but may be a tricky way to launch some
  162. ;     sysop-only commands.
  163. ;     ■ Search for : CALL
  164. ;
  165. ;------------------------------------------------------------------------------
  166. ;
  167. ; Postprocessing report
  168. ;
  169. ;    0       For/Next
  170. ;    0       While/EndWhile
  171. ;    6       If/Then or If/Then/Else
  172. ;    0       Select Case
  173. ;
  174. ;------------------------------------------------------------------------------
  175. ;                 AEGiS Corp - Break the routines, code against the machines!
  176. ;------------------------------------------------------------------------------
  177.